package Acceso;

import Entidades.Proveedor;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;

/**
 *
 * @author HnosRodriguez
 */
public class AccesoReportes {
 
    private Conexion conex;
    private ResultSet consultaSelect;
    private ArrayList<Proveedor> proveedores;
    
    public AccesoReportes() {
        this.conex = new Conexion();
    }

    public ResultSet getConsultaSelect() {
        return consultaSelect;
    }

    public void setConsultaSelect(ResultSet consultaSelect) {
        this.consultaSelect = consultaSelect;
    }

    public ArrayList<Proveedor> obtenerHistoricoEnlacesPuertos(String consulta) {

        try {
            consultaSelect = this.conex.realizarConsulta(consulta);
            proveedores = new ArrayList<Proveedor>();

            while (consultaSelect.next()) {

                proveedores.add(new Proveedor(
                        
                        consultaSelect.getString(2),Integer.parseInt(
                        consultaSelect.getString(1)),
                        consultaSelect.getString(3),
                        consultaSelect.getString(4)));
            }

            return proveedores;

        } catch (SQLException ex) {
            System.out.println(ex.getMessage());
            return null;
        } finally {
            try {

                this.conex.getStmt().close();

            } catch (SQLException ex) {
                System.out.println("No se pudo cerrar el statament: " + ex.getMessage());
            }
        }
    }

    public ArrayList<Proveedor> obtenerHistoricoLineasTelefonicas(String consulta) {
        try {
            consultaSelect = this.conex.realizarConsulta(consulta);
            proveedores = new ArrayList<Proveedor>();
            
            while (consultaSelect.next()) {
                
                proveedores.add(new Proveedor(
                consultaSelect.getString(2),Integer.parseInt(
                        consultaSelect.getString(1))));
            }

            return proveedores;
            
        } catch (SQLException ex) {
            System.out.println(ex.getMessage());
            return null;
        } finally {
            try {

                this.conex.getStmt().close();

            } catch (SQLException ex) {
                System.out.println("No se pudo cerrar el statament: " + ex.getMessage());
            }
        }
    }
}
